HammerspoonGyazo 変更ログ
from macのオレオレGyazo client
HammerspoonGyazo 変更ログ
メモ
特定のショートカットで撮影すると特定のコレクションに投げられるようになるかも?
やりたくなったらやるか…
2025/3/9
範囲キャプチャのキャンセル時通知は邪魔だったので削除
URL取得対象はifで判定してtrueの時だけ取得させるように変更
自分のメインブラウザが対応してるかもって時にappnameいれれば試行してくれるようになる
geckoは軒並み無理
SafariとChromiumでURLといあわせる方法が違うらしく、めっちゃ長くなった…
active tabに問い合わせるかcurrent tabに問い合わせるか amakipHanya.icon
ウィンドウキャプチャ時のサウンドエフェクト追加 撮れてるか不安だったため
2025/3/4
Chromium(chrome, Vivaldiなど)でURL取得に対応している場合はreferer_urlもmetadataに含めるようにした
全部のappに対して取りあえずURLを問い合わせている為、chrome/vivaldi以外の全てはconsoleにエラーが出る
避ける為に意味わからない迂遠な処理を加えたやつは以下
遅いので不採用になった
そんな問題にならないだろうという算段、もし重くなるなどあればそのとき対処する予定
code:simpleURLget.lua
local function getBrowserURL(appName)
-- AppleScript を一時ファイルに書き出す
local script = string.format([[
try
tell application "%s"
if (count of windows) > 0 then
try
return URL of active tab of front window
on error
return ""
end try
else
return ""
end if
end tell
on error
return ""
end try
]], appName)
local tmpFile = os.tmpname()
local file = io.open(tmpFile, "w")
if file then
file:write(script)
file:close()
else
return nil
end
-- 一時ファイルを指定して osascript を実行、stderr はリダイレクト
local command = string.format("osascript %q 2>/dev/null", tmpFile)
local result = hs.execute(command)
os.remove(tmpFile) -- 一時ファイルは削除
if result then
return result:gsub("^%s+", ""):gsub("%s+$", "")
end
return nil
end
一時ファイル名をUUIDに変更
1/9000の確率で重複する問題を解消!!!!意味ない!!!!!!
さすがに完成かなあ
動画とかは滅多に取らないし、速度は求められないので公式クライアントを使うため、対応予定無し。
2025/3/2
メッセージの表示方法をhs.alert.showからhs.notify.newに変更
今までのアラートデカすぎて邪魔だったので変更
macOSの通知設定でhammerspoonに許可を出せば通知が出る
機能をfunction化してメンテ性を上げた
こんなに改修するならgithubでやっておけばよかった!!!!!!!!!!!!!!!mouii.icon
2025/2/24
一時保存したファイル名が意味ないくせに全ての元凶だったのでyyyymmddうんたらに変えた
これで特殊文字が含まれていても問題なくアップロードできるはず
2025/2/8
local copyPermalinkToClipboard = を追加。
trueの場合はupload後にURLをclipboardにコピーできるように。
末尾で簡単にshortcut keyを追加できるようにした。
タイトルから "()" を除去する処理を追加。
youtubeの新着通知数が入ってると動作しない謎事象に遭遇したため対処
ローカルへの画像DLとリサイズ処理は成功するのに、upload出来ない事象
metadataのエスケープ処理の問題?わからないが(num)を消したら通ったので消して無理矢理解決
code:エラー文言メモ
2025-02-08 12:24:30: 12:24:30 ERROR: LuaSkin: Error deserialising JSON: The data couldn’t be read because it isn’t in the correct format.
2025/2/7作成
動作を変更したい時はChatGPTに聞いたら何とかなる
ローカルファイル消したくない場合は残すようにも出来る
キーボードショートカットは変更できる
GyazoのAPIドキュメントを読んで必要なmetadataがあれば追加できなくはない
ただしブラウザで開いているページのURL取得は対応していない
あるいはChromiumだと実装可能かもしれないが…
geckoがapple scriptのdictionary非対応の為、mouii.iconは追加するモチベがゼロ
URL欲しければ諦めてブラウザ拡張機能のgyazoを使う
高画質&png化できるけど、画像でかくなりすぎなので雑にjpg化して画像サイズ半分にしている
macのオレオレGyazo client WORK
public.icon